return TRUE;
}
+gboolean
+gtk_css_parser_try_at_keyword (GtkCssParser *parser,
+ const char *keyword)
+{
+ gsize len;
+
+ g_return_val_if_fail (GTK_IS_CSS_PARSER (parser), FALSE);
+ g_return_val_if_fail (keyword != NULL, FALSE);
+
+ len = strlen (keyword);
+
+ if (parser->data[0] != '@' ||
+ g_ascii_strncasecmp (&parser->data[1], keyword, len) != 0)
+ return FALSE;
+
+ parser->data += len + 1;
+
+ _gtk_css_parser_skip_whitespace (parser);
+
+ return TRUE;
+}
+
gboolean
gtk_css_parser_try_ident (GtkCssParser *parser,
const char *ident)
*/
gboolean gtk_css_parser_try_ident (GtkCssParser *parser,
const char *ident);
+gboolean gtk_css_parser_try_at_keyword (GtkCssParser *parser,
+ const char *keyword);
gboolean gtk_css_parser_try_token (GtkCssParser *parser,
GtkCssTokenType token_type);
gboolean _gtk_css_parser_try (GtkCssParser *parser,
gtk_css_scanner_push_section (scanner, GTK_CSS_SECTION_IMPORT);
- if (!_gtk_css_parser_try (scanner->parser, "@import", TRUE))
+ if (!gtk_css_parser_try_at_keyword (scanner->parser, "import"))
{
gtk_css_scanner_pop_section (scanner, GTK_CSS_SECTION_IMPORT);
return FALSE;
gtk_css_scanner_push_section (scanner, GTK_CSS_SECTION_COLOR_DEFINITION);
- if (!_gtk_css_parser_try (scanner->parser, "@define-color", TRUE))
+ if (!gtk_css_parser_try_at_keyword (scanner->parser, "define-color"))
{
gtk_css_scanner_pop_section (scanner, GTK_CSS_SECTION_COLOR_DEFINITION);
return FALSE;
gtk_css_scanner_push_section (scanner, GTK_CSS_SECTION_KEYFRAMES);
- if (!_gtk_css_parser_try (scanner->parser, "@keyframes", TRUE))
+ if (!gtk_css_parser_try_at_keyword (scanner->parser, "keyframes"))
{
gtk_css_scanner_pop_section (scanner, GTK_CSS_SECTION_KEYFRAMES);
return FALSE;